tick_count クラス

[timing.tick_count]

tick_count は、絶対ウォール・クロック・タイムスタンプです。2 つの tick_count オブジェクトを減算して、ウォールクロック期間 tick_count::interval_t を計算します。この時間は秒に変換できます。


namespace oneapi { 
namespace tbb { 

    class tick_count { 
    public: 
        class interval_t; tick_count(); 
        tick_count( const tick_count& ); 
        ~tick_count(); 
        tick_count& operator=( const tick_count& ); 
        static tick_count now(); 
        static double resolution(); 
    }; 

} // namespace tbb 
} // namespace oneapi
tick_count()

未指定のウォール・クロック・タイムスタンプを使用して tick_count を構築します。

tick_count( const tick_count& )

指定された tick_count のタイムスタンプを使用して tick_count を構築します。

~tick_count()

デストラクター。

tick_count& operator=( const tick_count& )

特定の tick_count のタイムスタンプを別の tick_count に割り当てます。

static tick_count now()

現在のウォールクロックのタイムスタンプに相当する tick_count オブジェクトを返します。

static double resolution()

tick_count で使用されるクロックの解像度を秒単位で返します。

tick_count::interval_t クラス

[timing.tick_count.interval_t]

tick_count::interval_t は、ウォールクロック期間を表します。


namespace oneapi { 
namespace tbb { 

    class tick_count::interval_t { 
    public: 
        interval_t(); 
        explicit interval_t( double ); ~interval_t(); 
        interval_t& operator=( const interval_t& ); 
        interval_t& operator+=( const interval_t& ); 
        interval_t& operator-=( const interval_t& ); 
        double seconds() const; 
    }; 

} // namespace tbb 
} // namespace oneapi
interval_t()

ゼロ存続期間を表わす interval_t を構築します。

explicit interval_t( double )

指定した時間を表わす interval_t を構築します。

~interval_t()

デストラクター。

interval_t& operator=( const interval_t& )

特定の interval_t のウォールクロック期間を別の interval_t に割り当てます。

interval_t& operator+=( const interval_t& )

期間を指定された interval_t まで増加させ、*this を返します。

interval_t& operator-=( const interval_t& )

期間を指定された interval_t まで減少させ、*this を返します。

double seconds() const

測定された期間を秒単位で返します。

非メンバー関数

[timing.tick_count.nonmember]

これらの関数は、ウォールクロック・タイムスタンプと期間を使用した算術二項演算を提供します。

oneapi::tbb::tick_count::interval_t operator-( const oneapi::tbb::tick_count&, const oneapi::tbb::tick_count& ); 

oneapi::tbb::tick_count::interval_t operator+( const oneapi::tbb::tick_count::interval_t&, const oneapi::tbb::tick_count::interval_t& ); 

oneapi::tbb::tick_count::interval_t operator-( const oneapi::tbb::tick_count::interval_t&, const oneapi::tbb::tick_count::interval_t& );

これらの関数が定義される名前空間は、tick_count および tick_count::interval_t オブジェクトの二項演算式で使用できる限り指定する必要はありません。例えば、実装では同じ未指定の名前空間でクラスと関数を定義し oneapi::tbb::tick_count をタイプエイリアスとして定義できます。この場合、非メンバー関数には引数依存のルックアップによってのみ到達できます。

oneapi::tbb::tick_count::interval_t operator-( const oneapi::tbb::tick_count&, const oneapi::tbb::tick_count& )

与えられた 2 つのウォール・クロック・タイムスタンプの期間を示す interval_t を返します。

oneapi::tbb::tick_count::interval_t operator+( const oneapi::tbb::tick_count::interval_t&, const oneapi::tbb::tick_count::interval_t& )

与えられた 2 つの間隔の累積を示す interval_t を返します。

oneapi::tbb::tick_count::interval_t operator-( const oneapi::tbb::tick_count::interval_t&, const oneapi::tbb::tick_count::interval_t& )

与えられた 2 つの間隔の差分を示すinterval_t を返します。